package com.fanly.weixin.netty.lock.entity;

import lombok.Data;

/**
 * 福鸽报文
 * @author D-BJ-144
 *
 */
@Data
public class FgMessageData {

	/**
	 * session 4 字节
	 * 偏移量0
	 * 对照 TCP Socket，由服务端分配的随机数，每个登陆的设备会分配一个 SESSION，
	 * 只对当前活动的连接有效，保持不变；设备断开重新连入，此 SESSION 可更改，通讯过程中此 SESSION 必须和登陆分配的SESSION 一致，否则会被丢弃。
	 * 登陆时设备默认发送的 SESSION 是 0X00000000
	 */
	private String session;

	/**
	 *
	 *
	 * 适配层的消息命令字 1 字节
	 * Active=0 握手，设备发起
	 * Error=1 数据错误
	 * Login=2 登陆，设备发起
	 * Logout=3 退出
	 * GetTime=4 时间同步，设备发起
	 * DataBinary=5 数据发送，双向
	 * KeyExchange=16 秘钥轮换（预留）
	 */
	private String cmd;

	/**
	 * 1 字节
	 * 00 – 默认不加密
	 * 01 – 使用根秘钥加密（预留，XTEA 算法，根秘钥可定制）
	 * 02 – 使用轮换秘钥加密（预留，）
	 */
	private String flag;

	/**
	 * 2 字节
	 * unsigned short 业务数据包长度，不包括适配层的头
	 * 16 位小端格式（低位在前，高位在后）
	 */
	private String len;

	/**
	 * 登陆用户名，ASCII 字符串（每个设备唯一）
	 */
	private String username;

	/**
	 * 登陆密码，ASCII 字符串，默认 123456
	 */
	private String password;

	/**
	 * 版本号，设备的版本号字符串
	 */
	private String version;

	/**
	 * 版本号，设备的版本号字符串
	 */
	private String error;

	/**
	 * 服务器当前时间，字符串，格式为 “YYYY-MM-DD HH-MM-SS” 代表年月日，时分秒
	 */
	private String time;

	/**
	 * wifi业务层数据
	 */
	private String data;

}
